package com.base.mapper.voipmapper;

import com.base.po.sqlparam.NewsExamplePage;
import com.base.po.voip.News;
import com.base.po.voip.NewsExample;
import com.base.utils.Page;

import java.util.List;
import org.apache.ibatis.annotations.Param;

public interface NewsMapper {
	int countByExample(NewsExample example);

	int deleteByExample(NewsExample example);

	int deleteByPrimaryKey(String id);

	int insert(News record);

	int insertSelective(News record);

	List<News> selectByExample(NewsExample example);

	List<News> selectByExamplePage(NewsExamplePage examplePage);
	
	List<News> selectByAll(@Param("page") Page page, @Param("category") Integer category,
                           @Param("title") String title, @Param("from") String from,
                           @Param("dateFrom") String dateFrom, @Param("dateTo") String dateTo);
	
	List<News> selectByCategory(@Param("page") Page page, @Param("toutiao") Integer toutiao,
                                @Param("shehui") Integer shehui, @Param("guonei") Integer guonei,
                                @Param("guoji") Integer guoji, @Param("yule") Integer yule, @Param("tiyu") Integer tiyu,
                                @Param("junshi") Integer junshi, @Param("keji") Integer keji,
                                @Param("caijing") Integer caijing, @Param("shishang") Integer shishang,
                                @Param("youxi") Integer youxi, @Param("qiche") Integer qiche,
                                @Param("xiaohua") Integer xiaohua, @Param("jiankang") Integer jiankang,
                                @Param("jiaju") Integer jiaju, @Param("xingzuo") Integer xingzuo,
                                @Param("lishi") Integer lishi, @Param("zatan") Integer zatan,
                                @Param("title") String title, @Param("from") String from,
                                @Param("dateFrom") String dateFrom, @Param("dateTo") String dateTo);

	News selectByPrimaryKey(String id);
	
	int selectByPK(@Param("pk") String pk, @Param("createtime") String createtime);

	int updateByExampleSelective(@Param("record") News record, @Param("example") NewsExample example);

	int updateByExample(@Param("record") News record, @Param("example") NewsExample example);

	int updateByPrimaryKeySelective(News record);

	int updateByPrimaryKey(News record);
	
	int updateDataStatusByID(@Param("id") String id, @Param("datastatus") Integer datastatus);
	
	int countByAll(@Param("category") Integer category, @Param("title") String title, @Param("from") String from,
                   @Param("dateFrom") String dateFrom, @Param("dateTo") String dateTo);
	
	int countByCategory(@Param("toutiao") Integer toutiao, @Param("shehui") Integer shehui,
                        @Param("guonei") Integer guonei, @Param("guoji") Integer guoji,
                        @Param("yule") Integer yule, @Param("tiyu") Integer tiyu,
                        @Param("junshi") Integer junshi, @Param("keji") Integer keji,
                        @Param("caijing") Integer caijing, @Param("shishang") Integer shishang,
                        @Param("youxi") Integer youxi, @Param("qiche") Integer qiche,
                        @Param("xiaohua") Integer xiaohua, @Param("jiankang") Integer jiankang,
                        @Param("jiaju") Integer jiaju, @Param("xingzuo") Integer xingzuo,
                        @Param("lishi") Integer lishi, @Param("zatan") Integer zatan,
                        @Param("title") String title, @Param("from") String from,
                        @Param("dateFrom") String dateFrom, @Param("dateTo") String dateTo);
}